//该文件是对axios的二次封装，目的是：统一给所有请求加上前缀
import axios from 'axios'
// 引入nprogress
import nprogress from 'nprogress'
//引入nprogress的样式
import 'nprogress/nprogress.css'

// axios.defaults.baseURL = 'https://api.uixsj.cn'
const ajax = axios.create({
	baseURL:'/api',
	timeout:2000
})

//请求拦截器
ajax.interceptors.request.use((config)=>{
	//进度条走起来
	nprogress.start()
	//一定要把请求的配置对象交出去
	return config
})

//响应拦截器
ajax.interceptors.response.use(
	//响应成功的回调（http状态码为2开头）
	response => {
		//进度条停止
		nprogress.done()
		//返回“纯粹的”数据
		return response.data
	},
	//响应失败的回调（http状态码不是2开头）
	error => {
		//进度条停止
		nprogress.done()
		//统一提示所有ajax响应的错误
		alert(error)
		//中断Promise链
		return new Promise(()=>{})
	}
)


export default ajax